Distributed processing systems are available in the prior art which constitute a Central Processing Unit (CPU) connected to a plurality of distributed or Peripheral Processing Units (PE), each of which is respectively connected to a CPU by a data communication path such as a unique data connection for each respective PE to the CPU or alternately a common bus connecting the CPU to all of the PE's along the bus. In such distributed processing configurations, the PE's execute simple repetitive computations and accumulate the results of those computations for periodic transmission to the CPU where more complex computations can be made. Since each of the distributed PE's is competing for servicing time by the CPU, the prior art has employed a variety of techniques for allocating the services of the CPU to each of the respective PE's. For example, simple sequential polling of each of the PE's has been employed in the prior art, allocating equal quantities of CPU servicing time to each of the PE's to accomplish the more complex computations.
However, for those PE's which require relatively less servicing than do other PE's, this simple sequential polling technique is wasteful of the CPU resource. Alternate prior art techniques assigned relative priorities to selected ones of the PE's so that some PE's can command more time from the CPU than can other PE's. A disadvantage of this prior art technique is that under excessive loading of the CPU, the higher priority PE's can monopolize the time on the CPU so that the lower priority PE's are inadequately served.
A similar situation arises in the prior art techniques for multiprogramming where a plurality of application programs are serviced by a single CPU.